package cn.melonlib.cores.model.enums;

import lombok.Getter;

/**
 * 级联类型
 */
@Getter
public enum CascadeType {
    /**
     * 删除级联，地归查找所有级联的对象，统一删除
     */
    DELETE("删除级联","cascadeDelete"),
    /**
     * 统计级联，发生新增或者删除的时候统计对应数据量并保存
     */
    COUNT("统计数量","cascadeCount"),
    /**
     * 更新级联，新增或者修改的时候完成数据更新级联，这个往往需要自定义方式来级联
     */
    SAVE("更新(新增+修改)","cascadeSave");
    private final String label;

    private final String defaultAction;

    CascadeType(String label, String defaultAction) {
        this.label = label;
        this.defaultAction = defaultAction;
    }
}
